package main

import "fmt"

func main() {
	//string底层是一个byte数组，因此也能做切片
	str := "dtc@qq.com"
	strSlice := str[4:]
	fmt.Println(strSlice)
	// strSlice[0] = "1"//string是不可变的，因此无法通过这种方式直接修改字符串

	//要想修改字符串，必须先把字符串转成  []byte或[]rune 再转成字符串
	//[]byte用于处理 ascii；而[]rune用于处理utf-8
	//[]rune等同于[]int32
	byteArray := []byte(str)
	byteArray[0] = 'n'
	str = string(byteArray)
	fmt.Println(str)

	runeOne := []rune(str)
	runeOne[0] = '我'
	str = string(runeOne)
	fmt.Println(str)

	int32One := []rune(str)
	int32One[0] = '你'
	str = string(int32One)
	fmt.Println(str)

	int64One := []rune(str)
	int64One[0] = '他'
	str = string(int64One)
	fmt.Println(str)
}
